package oneday.one;

import org.junit.Test;

/**
 * Created by ZPF on 2019/10/29.
 */
public class Demo6 {
    @Test
    public void func2(){
        BB bb =new BB();
        bb.setBean("hello");//参数必须是“String”类型
        BBB<Integer> bbb = new BBB<>();
        bbb.getBean();//返回值是Integer类
    }
}
class B<T> {
    private T bean;

    public T getBean(){
        return bean;
    }
    public void setBean(T t){
        this.bean = t;
    }
}
/*
 * BB类不是泛型类，但是它的父类是泛型类
 * 如果父类是泛型类，那么子类在继承时需要给父类传递类型变量值！(比如：下面的BB类传递了String）
 * 例如BB类，它所继承的是B<String>,也就是说，在父类出现的所有T等同与String
 */
class BB extends B<String>{

}
/*
 * BBB类也是一个泛型类，它继承了父类泛型类
 * 给父类传递的是自己的泛型
 *

 */
class BBB<E> extends B<E> {

}

class MyComparable implements Comparable<String>{

    @Override
    public int compareTo(String o) {
        return 0;
    }
}